#!/usr/bin/env python
# coding: utf-8

# In[123]:


import pandas as pd


# In[127]:


df_meta = pd.read_csv ("fsnd_zb_meta.tsv", encoding = "utf8", sep="\t",keep_default_na=False,na_values='na_rep')
df_r = pd.read_csv ("reg_treeid_level2.tsv", encoding = "utf8", sep="\t",keep_default_na=False,na_values='na_rep')
df_raw = pd.read_csv("fsnd_zb_data.tsv",encoding="utf8",sep='\t',keep_default_na=False,na_values='na_rep')

display(df_meta)
display(df_r)
display(df_raw)


# In[108]:


指标字典 = df_meta.set_index("code")['cname'].to_dict()
指标字典


# In[109]:


地区字典 = df_r.set_index("id")["name"].to_dict()
地区字典


# In[134]:


df = df_raw.set_index("zb").rename(index=指标字典)
df


# In[135]:


df = df.set_index("reg").rename(index=地区字典)
df


# In[136]:


df_z = df.reset_index().rename ( columns = {"reg":"地区", "zb":"指标", "sj":"年", "data":"数据"} )
df_z


# In[137]:


df_zh.set_index("地区").loc["北京市","时间":"数据"]


# In[151]:


dslice = df_zh [df_zh.指标.str.contains("城镇单位就业人员")]
dslice


# In[152]:


指标分的可能性 = [x.split("城镇单位就业") for x in dslice.指标.unique()]
指标分的可能性


# In[153]:


指标分的可能性_取 = [[x,y] for (x,y) in 指标分的可能性 if(y=='人员平均工资' or y=='人员') and x!=''] 
指标分的可能性_取


# In[167]:


指标分的可能性_取_all = ["城镇单位就业".join(x) for x in 指标分的可能性_取]
指标分的可能性_取_all


# In[168]:


df_就业切片 = df_zh.set_index("指标").loc[指标分的可能性_取_all].reset_index()
df_就业切片


# In[169]:


df_就业切片.describe(include="all")


# In[170]:


df_就业切片.groupby(['指标']).agg({"数据":["min","mean","max"]})


# In[171]:


df_就业切片['行业'] = [x.split('城镇单位就业')[0] for x in df_就业切片.指标]
df_就业切片['行业指标'] = [x.split('城镇单位就业')[1] for x in df_就业切片.指标]
df_就业切片


# In[172]:


统一字词={
    "交通运输、仓储及邮电通信业":"交通运输、仓储和邮电通信业",\
    "农、林、牧、渔业":"农林牧渔业",\
    "教育":"教育业",\
    "教育业业":"教育业"
}
df_就业切片=df_就业切片.set_index("行业").rename(index=统一字词).reset_index()
df_就业切片


# In[173]:


df_就业切片.to_csv("就业切片.tsv",encoding="utf8",sep="\t")


# In[175]:


df_就业切片_信息传输 = df_就业切片.query("行业=='信息传输、计算机服务和软件业'")


# ## 比较信息传输、计算机服务和软件业在不同地区的薪资发展水平

# In[179]:


df_就业切片_信息传输.groupby(['地区','时间']).agg({"数据":["mean"]}).rename(columns={"mean":"平均值"})


# ## 比较不同地区，薪资总水平的总和，大小值，平均值

# In[178]:


df_就业切片_人员平均工资 = df_就业切片.query("行业指标=='人员平均工资'")


# In[180]:


df_就业切片_人员平均工资.groupby(['地区','行业','行业指标']).agg({"数据":["sum","mean","min","max"]}).rename ( columns = {"sum":"总和", "mean":"均值", "max":"最大值", "min":"最小值"} )


# In[ ]:




